home *** CD-ROM | disk | FTP | other *** search
/ Apple WWDC 1996 / WWDC96_1996 (CD).toast / Technology Materials / MacOS 8 Resources / Developer Tools / Mac OS 8 Interfaces & Libraries / Interfaces / IDLIncludes / Resources.idl < prev    next >
C/C++ Source or Header  |  1996-05-01  |  4KB  |  123 lines

  1. /*
  2.      File:        Resources.idl
  3.  
  4.      Contains:    Resource Manager Interfaces.
  5.  
  6.      Version:    Technology:    System 7.5
  7.                  Release:    Universal Interfaces 3.0d3 on Copland DR1
  8.  
  9.      Copyright:    © 1984-1996 by Apple Computer, Inc.  All rights reserved.
  10.  
  11.      Bugs?:        If you find a problem with this file, send the file and version
  12.                  information (from above) and the problem description to:
  13.  
  14.                      Internet:    apple.bugs@applelink.apple.com
  15.                      AppleLink:    APPLE.BUGS
  16.  
  17. */
  18. #ifndef __RESOURCES_IDL__
  19. #define __RESOURCES_IDL__
  20.  
  21. #include <somobj.idl>
  22. #include <somcls.idl>
  23.  
  24. #ifndef __TYPES_IDL__
  25. #include <Types.idl>
  26. #endif
  27. #ifndef __MIXEDMODE_IDL__
  28. #include <MixedMode.idl>
  29. #endif
  30. #ifndef __FILES_IDL__
  31. #include <Files.idl>
  32. #endif
  33. #if FOR_SYSTEM8_COOPERATIVE
  34. #ifndef __FILEMANAGERTYPES_IDL__
  35. #include <FileManagerTypes.idl>
  36. #endif
  37. #endif
  38.  
  39. #ifdef __SOMIDL__
  40.  
  41. /*
  42.     InitResources and RsrcZoneInit are no longer needed in Copland.
  43.  *    CFM provides the necessary run time initialization entry points.
  44. */
  45. #if FOR_SYSTEM7_ONLY
  46. #endif
  47. #if FOR_SYSTEM7_AND_SYSTEM8_COOPERATIVE
  48. typedef OpaquePtr ResErrProcPtr;
  49. typedef OpaquePtr ResErrUPP;
  50. #endif
  51. #if FOR_SYSTEM7_AND_SYSTEM8_DEPRECATED
  52. /*
  53.  Use TempInsertROMMap to force the ROM resource map to be
  54.    inserted into the chain in front of the system. Note that
  55.    this call is only temporary - the modified resource chain
  56.    is only used for the next call to the resource manager.
  57.    See IM IV 19 for more information. 
  58. */
  59. #if CGLUESUPPORTED
  60. #endif
  61. #if OLDROUTINENAMES
  62. #endif
  63. #endif
  64. typedef short                    ResFileRefNum;
  65.  
  66. typedef short                    ResID;
  67.  
  68. typedef short                    ResAttributes;
  69.  
  70. typedef short                    ResFileAttributes;
  71.  
  72. typedef UInt32                    ResFilePermissions;
  73.  
  74. #if FOR_SYSTEM8_COOPERATIVE
  75. /*
  76.  *    New API returning OSStatus, rolling in low mem, and fixing
  77.  *    some sins of the past.
  78.  *
  79. */
  80. /*
  81.  *    We don't want to support resource file attributes other then
  82.  *    the readOnly bit.  Access to the readOnly bit is now gained
  83.  *    through the calls RMSetResFileReadOnlyState and RMGetResFileReadOnlyState.
  84.  *
  85.  *    So, for now, we will not support RMGetResFileAttrs and RMSetResFileAttrs.
  86.  *
  87.  *  OSStatus RMGetResFileAttrs(ResFileRefNum refNum, ResFileAttributes * attributes);
  88.  *  OSStatus RMSetResFileAttrs(ResFileRefNum refNum, ResFileAttributes attributes);
  89. */
  90. /*
  91.  * GetResourceSize returns either the size of the handle if the handle
  92.  * is not empty or the size of the resource as stored on disk (i.e.
  93.  * it has the exact semantics of GetResourceSizeOnDisk but does not
  94.  * have the confusing name).
  95. */
  96. /*
  97.  *    For now, we don't know if we want to support the purge
  98.  *    proc in the future... it's an outstanding issue as stated in the
  99.  *    Design Document.
  100.  *
  101.  *    OSStatus RMSetResPurge(Boolean install);
  102. */
  103. /*
  104.  *    The following calls are used to get/set the read only state (i.e. the
  105.  *    mapReadOnly file attribute) of a resource file.  When setting the state,
  106.  *  the state is set both in memory (i.e. taking affect immediately for all
  107.  *    other calls) and on disk (i.e. next time the file is opened, it will
  108.  *    be opened with the read only state set).  The call RMSetResFileReadOnlyState
  109.  *    ignores the current state of the resource file.  Setting the read only
  110.  *    state changes the current resource file attributes of the file both
  111.  *    in memory and on disk as appropriately (i.e. setting/clearing the read only state
  112.  *    will set/clear the mapReadOnly bit in memory and on disk).
  113.  *
  114.  *    The read only state is checked when .... [this needs to be filled in -- it
  115.  *    will be exactly the same as when the mapReadOnly bit is checked].
  116. */
  117. #endif
  118.  
  119. #endif /* __SOMIDL__ */
  120.  
  121. #endif /* __RESOURCES_IDL__ */
  122.  
  123.